package com.data.sample.entity;

import lombok.Data;

/**
 * OPC UA点位实体类（合并模拟量和开关量）
 * @author zhaocx
 * @date 2025-10-24
 */
@Data
public class OpcUaPoint {

    /**
     * 通信协议ID
     */
    private String id;


    /**
     * 通信协议ID（关联wp_opc_ua_protocol）
     */
    private String protocolId;

    /**
     * 点位名称
     */
    private String pointName;

    /**
     * 类型：0-模拟量, 1-开关量
     */
    private Integer type;

    /**
     * 描述
     */
    private String description;

    /**
     * 单位（模拟量）
     */
    private String unit;

    /**
     * 转换系数1（模拟量）
     */
    private Float conversionFactor1;

    /**
     * 转换系数2（模拟量）
     */
    private Float conversionFactor2;

    /**
     * 转换类型（模拟量）
     */
    private String conversionType;

    /**
     * 最大量程（模拟量）
     */
    private Float maxRange;

    /**
     * 最小量程（模拟量）
     */
    private Float minRange;

    /**
     * 状态反转：0-正常, 1-反转（开关量）
     */
    private int stateInversionFlag;

    /**
     * UA协议
     */
    private String uaProtocol;

    /**
     * 点位类型常量
     */
    public static final int TYPE_ANALOG = 0;  // 模拟量

    public static final int TYPE_DIGITAL = 1; // 开关量
}

